from selenium import webdriver
import time
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver import ActionChains, ChromeOptions

# 使用selenium打开谷歌浏览器
option = ChromeOptions()
option.add_experimental_option('excludeSwitches', ['enable-automation'])
driver = webdriver.Chrome(options=option)
# driver = webdriver.Chrome()

# 隐式等待设置为20秒
# driver.implicitly_wait(time_to_wait=5)

# 设置窗口的大小
# driver.set_window_size(1200, 1000)
driver.maximize_window()

# 打开一个带有普通验证码的登录页面
driver.get("https://kyfw.12306.cn/otn/resources/login.html")

time.sleep(2)

driver.find_element_by_xpath("//li[@class='login-hd-account']").click()

time.sleep(1)

# 下面解析页面数据
# 输入用户名
driver.find_element_by_xpath("//input[@id='J-userName']").send_keys("dong4716138")
# 输入密码
driver.find_element_by_xpath("//input[@id='J-password']").send_keys("xxxx")

input("请先手动点击验证码，然后按下回车...")

# 点击登录
driver.find_element_by_xpath("//a[@id='J-login']").click()

# 判定是否成功
# 创建等待操作对象
wait_ob = WebDriverWait(driver, 10)

input("按下回车，程序over...")

# 退出谷歌浏览器
driver.quit()
